!function() {
    var n, r, e, f, t, o, a, i, l, c, u, d, w, s, _, h, x, y, v, A, m, g, b, p, I, C, D, R, j, z, k, S, q, B, E, F, G, H, J, K, L, M, N, O, P, Q, T, U, V, W, X, Y, Z, $, nn, rn = parseInt(5), en = null, fn = function() {
        this.fc = 0,
        this.dl = 0
    }, tn = function() {
        this.dyn_tree = null,
        this.static_tree = null,
        this.extra_bits = null,
        this.extra_base = 0,
        this.elems = 0,
        this.max_length = 0,
        this.max_code = 0
    }, on = function(n, r, e, f) {
        this.good_length = n,
        this.max_lazy = r,
        this.nice_length = e,
        this.max_chain = f
    }, an = function() {
        this.next = null,
        this.len = 0,
        this.ptr = new Array(8192),
        this.off = 0
    }, ln = new Array(0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0), cn = new Array(0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13), un = new Array(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7), dn = new Array(16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15), wn = new Array(new on(0,0,0,0),new on(4,4,8,4),new on(4,5,16,8),new on(4,6,32,32),new on(4,4,16,16),new on(8,16,32,32),new on(8,16,128,128),new on(8,32,128,256),new on(32,128,258,1024),new on(32,258,258,4096)), sn = function(r) {
        r.next = n,
        n = r
    }, _n = function(n) {
        return u[32768 + n]
    }, hn = function(n, r) {
        return u[32768 + n] = r
    }, xn = function(n) {
        en[o + t++] = n,
        o + t == 8192 && Mn()
    }, yn = function(n) {
        n &= 65535,
        o + t < 8190 ? (en[o + t++] = 255 & n,
        en[o + t++] = n >>> 8) : (xn(255 & n),
        xn(n >>> 8))
    }, vn = function() {
        _ = 8191 & (_ << rn ^ 255 & i[m + 3 - 1]),
        h = _n(_),
        u[32767 & m] = h,
        hn(_, m)
    }, An = function(n, r) {
        Jn(r[n].fc, r[n].dl)
    }, mn = function(n) {
        return 255 & (n < 256 ? N[n] : N[256 + (n >> 7)])
    }, gn = function(n, r, e) {
        return n[r].fc < n[e].fc || n[r].fc == n[e].fc && L[r] <= L[e]
    }, bn = function(n, r, e) {
        var f;
        for (f = 0; f < e && nn < $.length; f++)
            n[r + f] = 255 & $.charCodeAt(nn++);
        return f
    }, pn = function(n) {
        var r, e, f = I, t = m, o = A, a = m > 32506 ? m - 32506 : 0, l = m + 258, c = i[t + o - 1], d = i[t + o];
        A >= R && (f >>= 2);
        do {
            if (i[(r = n) + o] == d && i[r + o - 1] == c && i[r] == i[t] && i[++r] == i[t + 1]) {
                t += 2,
                r++;
                do {} while (i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && i[++t] == i[++r] && t < l);
                if (e = 258 - (l - t),
                t = l - 258,
                e > o) {
                    if (g = n,
                    o = e,
                    e >= 258)
                        break;
                    c = i[t + o - 1],
                    d = i[t + o]
                }
            }
        } while ((n = u[32767 & n]) > a && 0 != --f);
        return o
    }, In = function() {
        var n, r, e = 65536 - p - m;
        if (-1 == e)
            e--;
        else if (m >= 65274) {
            for (n = 0; n < 32768; n++)
                i[n] = i[n + 32768];
            for (g -= 32768,
            m -= 32768,
            s -= 32768,
            n = 0; n < 8192; n++)
                r = _n(n),
                hn(n, r >= 32768 ? r - 32768 : 0);
            for (n = 0; n < 32768; n++)
                r = u[n],
                u[n] = r >= 32768 ? r - 32768 : 0;
            e += 32768
        }
        b || ((n = bn(i, m + p, e)) <= 0 ? b = !0 : p += n)
    }, Cn = function() {
        b || (d = 0,
        w = 0,
        jn(),
        function() {
            var n;
            for (n = 0; n < 8192; n++)
                u[32768 + n] = 0;
            if (C = wn[D].max_lazy,
            R = wn[D].good_length,
            I = wn[D].max_chain,
            m = 0,
            s = 0,
            (p = bn(i, 0, 65536)) <= 0)
                return b = !0,
                void (p = 0);
            for (b = !1; p < 262 && !b; )
                In();
            for (_ = 0,
            n = 0; n < 2; n++)
                _ = 8191 & (_ << rn ^ 255 & i[n])
        }(),
        r = null,
        t = 0,
        o = 0,
        D <= 3 ? (A = 2,
        v = 0) : (v = 2,
        y = 0),
        a = !1)
    }, Dn = function(n, e, t) {
        var o;
        return f || (Cn(),
        f = !0,
        0 != p) ? (o = Rn(n, e, t)) == t ? t : a ? o : (D <= 3 ? function() {
            for (; 0 != p && null == r; ) {
                var n;
                if (vn(),
                0 != h && m - h <= 32506 && (v = pn(h)) > p && (v = p),
                v >= 3)
                    if (n = Gn(m - g, v - 3),
                    p -= v,
                    v <= C) {
                        v--;
                        do {
                            m++,
                            vn()
                        } while (0 != --v);
                        m++
                    } else
                        m += v,
                        v = 0,
                        _ = 8191 & ((_ = 255 & i[m]) << rn ^ 255 & i[m + 1]);
                else
                    n = Gn(0, 255 & i[m]),
                    p--,
                    m++;
                for (n && (Fn(0),
                s = m); p < 262 && !b; )
                    In()
            }
        }() : function() {
            for (; 0 != p && null == r; ) {
                if (vn(),
                A = v,
                x = g,
                v = 2,
                0 != h && A < C && m - h <= 32506 && ((v = pn(h)) > p && (v = p),
                3 == v && m - g > 4096 && v--),
                A >= 3 && v <= A) {
                    var n;
                    n = Gn(m - 1 - x, A - 3),
                    p -= A - 1,
                    A -= 2;
                    do {
                        m++,
                        vn()
                    } while (0 != --A);
                    y = 0,
                    v = 2,
                    m++,
                    n && (Fn(0),
                    s = m)
                } else
                    0 != y ? (Gn(0, 255 & i[m - 1]) && (Fn(0),
                    s = m),
                    m++,
                    p--) : (y = 1,
                    m++,
                    p--);
                for (; p < 262 && !b; )
                    In()
            }
        }(),
        0 == p && (0 != y && Gn(0, 255 & i[m - 1]),
        Fn(1),
        a = !0),
        o + Rn(n, o + e, t - o)) : (a = !0,
        0)
    }, Rn = function(n, e, f) {
        var a, i, l;
        for (a = 0; null != r && a < f; ) {
            for ((i = f - a) > r.len && (i = r.len),
            l = 0; l < i; l++)
                n[e + a + l] = r.ptr[r.off + l];
            var c;
            if (r.off += i,
            r.len -= i,
            a += i,
            0 == r.len)
                c = r,
                r = r.next,
                sn(c)
        }
        if (a == f)
            return a;
        if (o < t) {
            for ((i = f - a) > t - o && (i = t - o),
            l = 0; l < i; l++)
                n[e + a + l] = en[o + l];
            a += i,
            t == (o += i) && (t = o = 0)
        }
        return a
    }, jn = function() {
        var n, r, e, f, t;
        if (0 == S[0].dl) {
            for (B.dyn_tree = j,
            B.static_tree = k,
            B.extra_bits = ln,
            B.extra_base = 257,
            B.elems = 286,
            B.max_length = 15,
            B.max_code = 0,
            E.dyn_tree = z,
            E.static_tree = S,
            E.extra_bits = cn,
            E.extra_base = 0,
            E.elems = 30,
            E.max_length = 15,
            E.max_code = 0,
            F.dyn_tree = q,
            F.static_tree = null,
            F.extra_bits = un,
            F.extra_base = 0,
            F.elems = 19,
            F.max_length = 7,
            F.max_code = 0,
            e = 0,
            f = 0; f < 28; f++)
                for (O[f] = e,
                n = 0; n < 1 << ln[f]; n++)
                    M[e++] = f;
            for (M[e - 1] = f,
            t = 0,
            f = 0; f < 16; f++)
                for (P[f] = t,
                n = 0; n < 1 << cn[f]; n++)
                    N[t++] = f;
            for (t >>= 7; f < 30; f++)
                for (P[f] = t << 7,
                n = 0; n < 1 << cn[f] - 7; n++)
                    N[256 + t++] = f;
            for (r = 0; r <= 15; r++)
                G[r] = 0;
            for (n = 0; n <= 143; )
                k[n++].dl = 8,
                G[8]++;
            for (; n <= 255; )
                k[n++].dl = 9,
                G[9]++;
            for (; n <= 279; )
                k[n++].dl = 7,
                G[7]++;
            for (; n <= 287; )
                k[n++].dl = 8,
                G[8]++;
            for (Sn(k, 287),
            n = 0; n < 30; n++)
                S[n].dl = 5,
                S[n].fc = Kn(n, 5);
            zn()
        }
    }, zn = function() {
        var n;
        for (n = 0; n < 286; n++)
            j[n].fc = 0;
        for (n = 0; n < 30; n++)
            z[n].fc = 0;
        for (n = 0; n < 19; n++)
            q[n].fc = 0;
        j[256].fc = 1,
        Y = Z = 0,
        T = U = V = 0,
        W = 0,
        X = 1
    }, kn = function(n, r) {
        for (var e = H[r], f = r << 1; f <= J && (f < J && gn(n, H[f + 1], H[f]) && f++,
        !gn(n, e, H[f])); )
            H[r] = H[f],
            r = f,
            f <<= 1;
        H[r] = e
    }, Sn = function(n, r) {
        var e, f, t = new Array(16), o = 0;
        for (e = 1; e <= 15; e++)
            o = o + G[e - 1] << 1,
            t[e] = o;
        for (f = 0; f <= r; f++) {
            var a = n[f].dl;
            0 != a && (n[f].fc = Kn(t[a]++, a))
        }
    }, qn = function(n) {
        var r, e, f = n.dyn_tree, t = n.static_tree, o = n.elems, a = -1, i = o;
        for (J = 0,
        K = 573,
        r = 0; r < o; r++)
            0 != f[r].fc ? (H[++J] = a = r,
            L[r] = 0) : f[r].dl = 0;
        for (; J < 2; ) {
            var l = H[++J] = a < 2 ? ++a : 0;
            f[l].fc = 1,
            L[l] = 0,
            Y--,
            null != t && (Z -= t[l].dl)
        }
        for (n.max_code = a,
        r = J >> 1; r >= 1; r--)
            kn(f, r);
        do {
            r = H[1],
            H[1] = H[J--],
            kn(f, 1),
            e = H[1],
            H[--K] = r,
            H[--K] = e,
            f[i].fc = f[r].fc + f[e].fc,
            L[r] > L[e] + 1 ? L[i] = L[r] : L[i] = L[e] + 1,
            f[r].dl = f[e].dl = i,
            H[1] = i++,
            kn(f, 1)
        } while (J >= 2);
        H[--K] = H[1],
        function(n) {
            var r, e, f, t, o, a, i = n.dyn_tree, l = n.extra_bits, c = n.extra_base, u = n.max_code, d = n.max_length, w = n.static_tree, s = 0;
            for (t = 0; t <= 15; t++)
                G[t] = 0;
            for (i[H[K]].dl = 0,
            r = K + 1; r < 573; r++)
                (t = i[i[e = H[r]].dl].dl + 1) > d && (t = d,
                s++),
                i[e].dl = t,
                e > u || (G[t]++,
                o = 0,
                e >= c && (o = l[e - c]),
                a = i[e].fc,
                Y += a * (t + o),
                null != w && (Z += a * (w[e].dl + o)));
            if (0 != s) {
                do {
                    for (t = d - 1; 0 == G[t]; )
                        t--;
                    G[t]--,
                    G[t + 1] += 2,
                    G[d]--,
                    s -= 2
                } while (s > 0);
                for (t = d; 0 != t; t--)
                    for (e = G[t]; 0 != e; )
                        (f = H[--r]) > u || (i[f].dl != t && (Y += (t - i[f].dl) * i[f].fc,
                        i[f].fc = t),
                        e--)
            }
        }(n),
        Sn(f, a)
    }, Bn = function(n, r) {
        var e, f, t = -1, o = n[0].dl, a = 0, i = 7, l = 4;
        for (0 == o && (i = 138,
        l = 3),
        n[r + 1].dl = 65535,
        e = 0; e <= r; e++)
            f = o,
            o = n[e + 1].dl,
            ++a < i && f == o || (a < l ? q[f].fc += a : 0 != f ? (f != t && q[f].fc++,
            q[16].fc++) : a <= 10 ? q[17].fc++ : q[18].fc++,
            a = 0,
            t = f,
            0 == o ? (i = 138,
            l = 3) : f == o ? (i = 6,
            l = 3) : (i = 7,
            l = 4))
    }, En = function(n, r) {
        var e, f, t = -1, o = n[0].dl, a = 0, i = 7, l = 4;
        for (0 == o && (i = 138,
        l = 3),
        e = 0; e <= r; e++)
            if (f = o,
            o = n[e + 1].dl,
            !(++a < i && f == o)) {
                if (a < l)
                    do {
                        An(f, q)
                    } while (0 != --a);
                else
                    0 != f ? (f != t && (An(f, q),
                    a--),
                    An(16, q),
                    Jn(a - 3, 2)) : a <= 10 ? (An(17, q),
                    Jn(a - 3, 3)) : (An(18, q),
                    Jn(a - 11, 7));
                a = 0,
                t = f,
                0 == o ? (i = 138,
                l = 3) : f == o ? (i = 6,
                l = 3) : (i = 7,
                l = 4)
            }
    }, Fn = function(n) {
        var r, e, f, t, o;
        if (t = m - s,
        Q[V] = W,
        qn(B),
        qn(E),
        f = function() {
            var n;
            for (Bn(j, B.max_code),
            Bn(z, E.max_code),
            qn(F),
            n = 18; n >= 3 && 0 == q[dn[n]].dl; n--)
                ;
            return Y += 3 * (n + 1) + 5 + 5 + 4,
            n
        }(),
        (e = Z + 3 + 7 >> 3) <= (r = Y + 3 + 7 >> 3) && (r = e),
        t + 4 <= r && s >= 0)
            for (Jn(0 + n, 3),
            Ln(),
            yn(t),
            yn(~t),
            o = 0; o < t; o++)
                xn(i[s + o]);
        else
            e == r ? (Jn(2 + n, 3),
            Hn(k, S)) : (Jn(4 + n, 3),
            function(n, r, e) {
                var f;
                for (Jn(n - 257, 5),
                Jn(r - 1, 5),
                Jn(e - 4, 4),
                f = 0; f < e; f++)
                    Jn(q[dn[f]].dl, 3);
                En(j, n - 1),
                En(z, r - 1)
            }(B.max_code + 1, E.max_code + 1, f + 1),
            Hn(j, z));
        zn(),
        0 != n && Ln()
    }, Gn = function(n, r) {
        if (c[T++] = r,
        0 == n ? j[r].fc++ : (n--,
        j[M[r] + 256 + 1].fc++,
        z[mn(n)].fc++,
        l[U++] = n,
        W |= X),
        X <<= 1,
        0 == (7 & T) && (Q[V++] = W,
        W = 0,
        X = 1),
        D > 2 && 0 == (4095 & T)) {
            var e, f = 8 * T, t = m - s;
            for (e = 0; e < 30; e++)
                f += z[e].fc * (5 + cn[e]);
            if (f >>= 3,
            U < parseInt(T / 2) && f < parseInt(t / 2))
                return !0
        }
        return 8191 == T || 8192 == U
    }, Hn = function(n, r) {
        var e, f, t, o, a = 0, i = 0, u = 0, d = 0;
        if (0 != T)
            do {
                0 == (7 & a) && (d = Q[u++]),
                f = 255 & c[a++],
                0 == (1 & d) ? An(f, n) : (t = M[f],
                An(t + 256 + 1, n),
                0 != (o = ln[t]) && (f -= O[t],
                Jn(f, o)),
                e = l[i++],
                t = mn(e),
                An(t, r),
                0 != (o = cn[t]) && (e -= P[t],
                Jn(e, o))),
                d >>= 1
            } while (a < T);
        An(256, n)
    }, Jn = function(n, r) {
        w > 16 - r ? (yn(d |= n << w),
        d = n >> 16 - w,
        w += r - 16) : (d |= n << w,
        w += r)
    }, Kn = function(n, r) {
        var e = 0;
        do {
            e |= 1 & n,
            n >>= 1,
            e <<= 1
        } while (--r > 0);
        return e >> 1
    }, Ln = function() {
        w > 8 ? yn(d) : w > 0 && xn(d),
        d = 0,
        w = 0
    }, Mn = function() {
        if (0 != t) {
            var f, a;
            for (null != n ? (i = n,
            n = n.next) : i = new an,
            i.next = null,
            i.len = i.off = 0,
            f = i,
            null == r ? r = e = f : e = e.next = f,
            f.len = t - o,
            a = 0; a < f.len; a++)
                f.ptr[a] = en[o + a];
            t = o = 0
        }
        var i
    };
    window.RawDeflate || (RawDeflate = {}),
    RawDeflate.deflate = function(t, o) {
        var a, d;
        $ = t,
        nn = 0,
        void 0 === o && (o = 6),
        function(t) {
            var o;
            if (t ? t < 1 ? t = 1 : t > 9 && (t = 9) : t = 6,
            D = t,
            f = !1,
            b = !1,
            null == en) {
                for (n = r = e = null,
                en = new Array(8192),
                i = new Array(65536),
                l = new Array(8192),
                c = new Array(32832),
                u = new Array(65536),
                j = new Array(573),
                o = 0; o < 573; o++)
                    j[o] = new fn;
                for (z = new Array(61),
                o = 0; o < 61; o++)
                    z[o] = new fn;
                for (k = new Array(288),
                o = 0; o < 288; o++)
                    k[o] = new fn;
                for (S = new Array(30),
                o = 0; o < 30; o++)
                    S[o] = new fn;
                for (q = new Array(39),
                o = 0; o < 39; o++)
                    q[o] = new fn;
                B = new tn,
                E = new tn,
                F = new tn,
                G = new Array(16),
                H = new Array(573),
                L = new Array(573),
                M = new Array(256),
                N = new Array(512),
                O = new Array(29),
                P = new Array(30),
                Q = new Array(parseInt(1024))
            }
        }(o);
        for (var w = new Array(1024), s = []; (a = Dn(w, 0, w.length)) > 0; ) {
            var _ = new Array(a);
            for (d = 0; d < a; d++)
                _[d] = String.fromCharCode(w[d]);
            s[s.length] = _.join("")
        }
        return $ = null,
        s.join("")
    }
}();
